Two dimensional (2D) codes (e.g., bar codes) allow for a few kilobytes of information to be stored and decoded using image processing algorithms. Today, these 2D codes are often scanned and decoded by smartphones or other mobile devices.